package com.msb.mall.thirdPart.utils;

import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClient;
import com.aliyun.oss.OSSClientBuilder;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.io.FileInputStream;
import java.io.InputStream;

/**
 * 使用阿里云进行 文件的上传、下载、删除、查看
 */
@Slf4j
@Component
public class Upload2Aliyun {

    @Autowired
    private OSSClient ossClient;

    /**
     * 上传文件  当前为简单上传处理
     */
    public void uploadFile() throws Exception {
        // yourEndpoint填写Bucket所在地域对应的Endpoint。以华东1（杭州）为例，其它Region请按实际情况填写。
//        String endpoint = "oss-cn-guangzhou.aliyuncs.com";
//        // 阿里云账号AccessKey拥有所有API的访问权限，风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维，请登录RAM控制台创建RAM用户。
//        String accessKeyId = "LTAI5tKLEp2vYQ9QWHdHydms";
//        String accessKeySecret = "D1yQUyvYgfbGp2HFB9kh5SU2cA5ySk";
//
//        // 创建OSSClient实例。
//        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);

        // 填写本地文件的完整路径。如果未指定本地路径，则默认从示例程序所属项目对应本地路径中上传文件流。
        InputStream inputStream = new FileInputStream("C:\\Users\\issuser\\Desktop\\work\\素材\\测试.png");

        // bucket名称、上传后的文件名称
        ossClient.putObject("wsh-xl", "测试.png", inputStream);

        // 关闭OSSClient。
        ossClient.shutdown();
        System.out.println("长传图片成功...");
    }

    /**
     * 下载文件
     */
    public void downloadFile() throws Exception {

    }

    /**
     * 上传文件
     */
    public void deleteFile() throws Exception {

    }
}
